1 00:00:00,000 --> 00:00:05,120 Hi everybody, my name is Ken Fallon and you're listening to another episode of Hacker Public Radio. 2 00:00:05,120 --> 00:00:09,840 In today's show we're going to talk about installing synergy so that you can control the 3 00:00:09,840 --> 00:00:17,280 keyboard and mouse of another computer securely over SSH. Now this makes sense when you have keyboards 4 00:00:17,280 --> 00:00:22,720 next to each other so that you can at least see the screen on the remote computer. So to install 5 00:00:22,720 --> 00:00:27,600 synergy on both computers you need to do so as route depending on your packet manager 6 00:00:27,600 --> 00:00:34,560 might be DNF space and Stole space synergy or on Debian-based systems apt space and Stole space 7 00:00:34,560 --> 00:00:40,320 synergy and I'll leave it up to you to figure out how to install that on the other platforms. 8 00:00:40,320 --> 00:00:48,640 It also works on Windows and OSX. So my setup the main PC is going to be called PC under score 9 00:00:48,640 --> 00:00:54,000 middle and this is the one with the keyboard and mouse that we intend to use to control all the other 10 00:00:54,000 --> 00:01:01,360 computers. So I set up I only have one other PC but you can have PCs on the right left above below 11 00:01:01,360 --> 00:01:06,640 in this virtual grid. So in my case I've got one computer here, I'm one computer there. 12 00:01:08,720 --> 00:01:12,800 So the only other PC for me is the one on the right and I'm going to call that a 13 00:01:12,800 --> 00:01:19,520 madness to bleep PC under score rise and during these instructions I will be clearly 14 00:01:19,520 --> 00:01:26,480 specifying which computer I'm doing what action on. So you kind of need to keep that in mind 15 00:01:26,480 --> 00:01:35,920 apologies for the verbal descriptions. So on the PC under score middle I'm creating a configuration file 16 00:01:35,920 --> 00:01:44,320 and I put that into my home directory and I call a sub directory called edc slash synergy-work.com 17 00:01:44,320 --> 00:01:50,320 that just happens to be the configuration file I use you can use whatever you're like. 18 00:01:51,280 --> 00:01:56,080 And there's a sort of i and i type configuration file that you need to follow. 19 00:01:56,720 --> 00:02:00,640 First thing you need to do is have a section colon space screens and then 20 00:02:01,200 --> 00:02:04,480 underneath that you need to specify the names of the computers that you're going to be 21 00:02:04,480 --> 00:02:10,080 controlling. So I have PC under score middle colon and underneath that PC under score rise 22 00:02:10,080 --> 00:02:17,280 colon and underneath that I have an end to end that section. And then the next section I have 23 00:02:17,280 --> 00:02:24,880 is section colon space links and underneath that I have PC under score middle colon and underneath 24 00:02:24,880 --> 00:02:32,080 that I have right equals PC under score right and then from PC right point of view and the next 25 00:02:32,080 --> 00:02:38,560 line PC under score right colon left equals PC under score middle and it rules that end section. 26 00:02:38,560 --> 00:02:43,200 And what that links section does that tells you from the point of view of this PC middle 27 00:02:43,760 --> 00:02:50,240 on my right is the PC whose name is PC right and then from the computer called PC right 28 00:02:50,240 --> 00:02:55,200 and it's left is the computer called PC middle and you can see how you can build this to be 29 00:02:55,200 --> 00:03:02,320 top bottom left right and the whole matrix. So still on the PC middle I say the file 30 00:03:02,320 --> 00:03:12,000 and I'm going to add an entry to my SSH config file in my home directory in my dot SSH config file 31 00:03:12,560 --> 00:03:19,920 if you don't have one you can create one and the entry is going to do two things one it's 32 00:03:19,920 --> 00:03:25,760 going to specify what the IP address is of the other computer and then it's going to do our 33 00:03:25,760 --> 00:03:34,640 remote forward so I can create a virtual connection between the two computers. So the three lines 34 00:03:34,640 --> 00:03:43,200 that you need to enter into your dot SSH slash config file are host space PC right 35 00:03:43,840 --> 00:03:49,440 then new line host name space on the IP address one i two one six eight zero dot one five 36 00:03:49,440 --> 00:03:56,240 always my example and then underneath that remote forward space one two seven dot zero dot zero 37 00:03:56,240 --> 00:04:02,320 dot one colon two four eight zero zero space one two seven dot zero dot zero dot zero dot one 38 00:04:02,320 --> 00:04:09,120 colon two four eight zero zero and still on the PC underscore middle we're going to run 39 00:04:09,120 --> 00:04:14,880 synergy server but we're going to do it in the foreground with debug enabled. So the command is 40 00:04:14,880 --> 00:04:21,760 synergy s all one word space dash dash debug space and that's in the location and then in the 41 00:04:21,760 --> 00:04:29,200 upper case debug then everything else is in the location space dash dash no dash demon space dash 42 00:04:29,200 --> 00:04:42,720 server space dash dash address space one two seven dot zero dot zero dot one and dash dash config space 43 00:04:42,720 --> 00:04:51,520 tilde four such ETC four such synergy dash work dot conf which is the link to my config file 44 00:04:51,520 --> 00:05:01,520 and then dash dash name space PC underscore middle and then dash dash log space slash 45 00:05:01,520 --> 00:05:09,040 temp slash synergy work dot conf dot log and what that's command is synergy server calls server 46 00:05:09,040 --> 00:05:13,920 the debug sets the amount of information that you were going to display in this case a lot 47 00:05:13,920 --> 00:05:18,960 because debug information we're going to go no demon which means it's going to continue running 48 00:05:18,960 --> 00:05:24,720 in the foreground and not disappearing to the background we're going to start it as a server so 49 00:05:24,720 --> 00:05:30,080 not a client and the address that the server is going to be listening on is one two seven dot zero 50 00:05:30,080 --> 00:05:36,400 dot zero dot one so it's sitting there waiting listening on that on the local host and the 51 00:05:36,400 --> 00:05:40,560 configuration file that's going to use is the one that we've just edited the one that says the 52 00:05:40,560 --> 00:05:49,280 PC and the middle is on the is to the right of the other PC right and then PC right sees the 53 00:05:49,280 --> 00:05:54,560 PC middle on its left and then when we run that we'll see stuff like opening configuration 54 00:05:54,560 --> 00:06:02,480 configuration reads successfully x open display blah blah blah starting server vnq is ready 55 00:06:02,480 --> 00:06:09,120 and then screen PC middle shape changed and then it stops because at that point it's now waiting 56 00:06:09,120 --> 00:06:16,080 for connection to come in so we can double check that it's rolling on that PC middle 57 00:06:16,560 --> 00:06:26,080 computer by typing net status space dash a np and we pipe that to grip two four eight zero zero 58 00:06:26,080 --> 00:06:30,320 and if you run that as normal user you'll get an error message which you can ignore but you'll see 59 00:06:30,320 --> 00:06:40,320 that it's listening on one two seven dot zero dot zero dot one two seven dot zero dot zero 60 00:06:40,320 --> 00:06:48,320 one and port number two four eight zero zero and it's accepting it's going to reply back to wherever 61 00:06:48,320 --> 00:06:54,880 if zero dot zero dot zero dot zero which is which means in this term I'm going to reply back 62 00:06:54,880 --> 00:07:03,040 to wherever it comes from so on the PC in the middle we're going to connect to the PC on the 63 00:07:03,040 --> 00:07:11,760 right and we're going to do that and we type SSH space PC underscore right and that will tell 64 00:07:11,760 --> 00:07:16,000 the SSH command to connect to that machine now it doesn't know about that so it'll go and 65 00:07:16,000 --> 00:07:20,880 look in its configuration file which we've changed earlier it knows the whole stype address 66 00:07:20,880 --> 00:07:26,080 so it'll connect to that and then it'll do the special thing that it will listen on the far 67 00:07:26,080 --> 00:07:33,200 side for commands and pipe them back through the pipe we'll talk more about that later so 68 00:07:33,920 --> 00:07:39,280 on the PC on the right so we can either do this via the SSH connection that we opened or 69 00:07:39,840 --> 00:07:45,040 better yes by going over and typing on its keyboard so if it's a laptop you're typing on the 70 00:07:45,040 --> 00:07:52,240 laptop keyboard of the second one the one that's on the right you type synergy C which is the command 71 00:07:52,240 --> 00:07:59,760 for to start at the client we're going to go space dash dash debug space uppercase i nfo 72 00:08:00,640 --> 00:08:10,480 and space dash dash no dash demon space dash dash name space PC underscore right space one two seven 73 00:08:10,480 --> 00:08:15,600 dot zero dot zero dot one now what that's happening here is you're starting synergy in the 74 00:08:15,600 --> 00:08:21,680 client board we're going to enable some debugging and in this case we're just going to try and show 75 00:08:21,680 --> 00:08:27,600 info level debugging information because there's a no full lot of people around full debugging 76 00:08:28,400 --> 00:08:33,120 again we're not going to run it as a no-dayman so it's running in the foreground and we now need 77 00:08:33,120 --> 00:08:39,840 to tell it okay in this whole setup what name am i and we've already configured it as PC on the right 78 00:08:40,560 --> 00:08:48,160 and we tell it to send its commands over to one two seven dot zero dot zero dot one which is 79 00:08:48,480 --> 00:08:54,880 listening on the SSH tunnel and then you'll see debug information like connecting to one two seven 80 00:08:54,880 --> 00:09:00,720 dot zero zero dot one and if all goes well you see something like connected to server and then 81 00:09:00,720 --> 00:09:07,120 if you go back to PC middle you should see the log that is connected opening new socket for a 82 00:09:07,120 --> 00:09:13,760 blah except a client connection received client PC right and the shape is this and the client PC 83 00:09:13,760 --> 00:09:21,920 right has connected so perfect so just want to make a little note if you tried to run the client 84 00:09:21,920 --> 00:09:28,560 synergy see over the SSH connection so you're on your middle computer and you've connected to the 85 00:09:28,560 --> 00:09:34,000 other computer in order to start the tunnel up over SSH you might try running the commands there 86 00:09:34,000 --> 00:09:38,320 if you do that you'll see the connection correctly but when you move your mouse on 87 00:09:38,880 --> 00:09:42,640 from one screen with the hope that little jump to the other one it won't do that it'll 88 00:09:42,640 --> 00:09:47,120 come back into the center and the reason for that is to do it x permissions so that command 89 00:09:48,480 --> 00:09:50,320 we need to run the command 90 00:09:51,040 --> 00:09:56,480 to start the synergy client it has to be on the keyboard of the session that you're on so if you want to 91 00:09:56,480 --> 00:10:02,640 control a particular session you need to run the command from that session there's a way to get 92 00:10:02,640 --> 00:10:06,800 around that but I found the easiest thing is you just go up in the morning you log in to that 93 00:10:06,800 --> 00:10:11,040 other computer you start the client and then you go back to your main computer and for the rest of 94 00:10:11,040 --> 00:10:19,920 the day you don't have to touch this other computer so where are we now have it so that when on 95 00:10:19,920 --> 00:10:24,720 the middle PC when you move the keyboard when you move the mouse over to the other side 96 00:10:24,720 --> 00:10:31,280 it will highlight programs on the other side just as if you're using them you can use the menu to 97 00:10:31,280 --> 00:10:39,440 start a no pad application for example case if you're running kitty or some other mouse pad or whatever 98 00:10:40,400 --> 00:10:45,440 and you can start typing on your middle keyboard and everything that your type will appear on the 99 00:10:45,440 --> 00:10:53,360 other one so that is basically what we want to do and if you look at the logs on the PC 100 00:10:53,360 --> 00:10:58,720 middle as you're doing that you'll see all sorts of stuff like switching from PC middle to PC 101 00:10:58,720 --> 00:11:05,280 rice leaving the screen moving over the keyboard updating the screen to this at the next thing 102 00:11:05,840 --> 00:11:13,440 and sending X screensaver commands etc so we now know it works because you're on the on your 103 00:11:13,440 --> 00:11:21,520 PC middle and you can control PC rice so we can go over to the PC rice and that keyboard 104 00:11:21,520 --> 00:11:28,880 we can hold on control and press C which is the generic cancel unit in Unix word world 105 00:11:28,880 --> 00:11:34,400 you often see you've written a CTRL plus C and what that means is you hold on the control key 106 00:11:34,960 --> 00:11:39,360 kept keeping it all held you press the C does matter if it's over case or long case 107 00:11:41,520 --> 00:11:47,760 and that will terminate command now back there will terminate the client and then back on the 108 00:11:47,760 --> 00:11:53,520 middle PC which is still running the server you'll see a debug information client PC right 109 00:11:53,520 --> 00:11:58,800 has just connected closing socket that they had opened earlier and we're now basically finished with 110 00:11:58,800 --> 00:12:03,040 that as well so you can hold on the PC middle you can hold on you control and C 111 00:12:05,040 --> 00:12:13,040 to terminate the server as well so now that everything is working correctly we can make it 112 00:12:13,040 --> 00:12:19,680 easier to start and it just does a by the by the note here there is a way within synergy to set up 113 00:12:21,440 --> 00:12:31,120 TLS or that your traffic is encrypted I'm not doing that here because it's running over SSH 114 00:12:31,120 --> 00:12:36,160 there's already an encryption there so if you want to do that they command that you'll need to enable 115 00:12:36,160 --> 00:12:43,680 is dash dash enabled dash crypto and it is quite complicated to do due to the fact that the 116 00:12:43,680 --> 00:12:52,160 people who developed it went closed open core blah blah blah on us so this is a reason to do SSH 117 00:12:52,160 --> 00:12:57,680 connections and the SSH can totally is actually nicer because if you're on different 118 00:12:57,680 --> 00:13:04,560 networks even you can still connect to the other computer using SSH via maybe a bus 119 00:13:04,560 --> 00:13:10,080 and a host or something and in that case you connect remotely to another computer and then 120 00:13:10,080 --> 00:13:16,960 you port forward via that then to your client so if both computers can't talk to each other 121 00:13:16,960 --> 00:13:22,960 what you do is you have the middle PC connect to a central server via SSH and then you have the 122 00:13:22,960 --> 00:13:30,160 other PC on the right connect to that remote server the same remote server and then you can 123 00:13:30,160 --> 00:13:41,280 forward your packets through that but that's outside the scope of this exercise so as we saw before 124 00:13:41,280 --> 00:13:47,200 the client needs to be run on the same physical access that you need on the second computer so 125 00:13:47,200 --> 00:13:53,280 what we want to do now is make things a little bit easier by making a bash script two bash scripts 126 00:13:53,280 --> 00:13:57,520 actually want to run the client to run the server so we'll start on the PC on the right 127 00:13:57,520 --> 00:14:03,920 you can create a bin directory if you don't have it in your home directory make your bin 128 00:14:04,880 --> 00:14:10,720 and then you can edit the file using nano or something nano space till the forward slash bin 129 00:14:10,720 --> 00:14:24,960 for slash start that synergy client dot bash and then in that command in that empty file you type octetorp 130 00:14:25,520 --> 00:14:32,800 which is the hash symbol or the pound symbol if you're in the US tiktokto you know the two lines 131 00:14:32,800 --> 00:14:36,160 vertical two lines horizontal okay you type hash 132 00:14:36,160 --> 00:14:45,520 exclamation mark force I pay in force I bash new line kill all space synergy c new line sleep space 133 00:14:45,520 --> 00:14:55,200 two new line synergy c space dash dash name space PC right space one two seven dot zero dot zero dot 134 00:14:55,200 --> 00:15:02,640 one enter exist zero so what that does first line tells us it's a bash file the second line 135 00:15:02,640 --> 00:15:08,400 checks to see if there are other versions of synergy client running and kills them all 136 00:15:09,280 --> 00:15:14,080 is then waits for two seconds to give area the system a chance to settle down 137 00:15:15,120 --> 00:15:22,480 then it starts another synergy client with the name of PC right and one two seven dot zero dot zero 138 00:15:22,480 --> 00:15:28,080 dot one and then it goes into the double go into the background and then it exits with a zero which is correct 139 00:15:28,080 --> 00:15:36,400 so still on that computer on the PC right we allow the file to be executable by typing change mod 140 00:15:37,120 --> 00:15:48,240 c h m o d sorry space plus x space tilde bin start dash synergy dash client dot bash 141 00:15:49,120 --> 00:15:55,760 which is the name of the file that we used earlier if you use something different that's entirely up to you 142 00:15:55,760 --> 00:16:04,480 so while we're over there we can we can basically run the file start dash synergy dash client 143 00:16:04,880 --> 00:16:14,080 dot bash and it'll run and I usually I have encrypted hard disk so first thing in the morning 144 00:16:14,080 --> 00:16:20,800 I need to type in a password anyway so I turn on both computers type my password on PC underscore 145 00:16:20,800 --> 00:16:25,840 right and then when the session comes up I run the command and then I basically leave that loan for 146 00:16:25,840 --> 00:16:32,160 the rest of the day but if you want to do an automatically start thing there's a link in the 147 00:16:32,160 --> 00:16:41,280 show notes learn dot ita fruit dot com synergy dash on dash rush raspberry dash pi for such 148 00:16:41,280 --> 00:16:47,840 set up dash synergy dash client dash auto start easy for me to say and that'll tell you how to do 149 00:16:47,840 --> 00:16:53,920 it on one on raspberry pi but your system may be different so you're going to need to figure out how 150 00:16:53,920 --> 00:16:59,360 to do it on your own system and again if you're logging in anyway having the type your password 151 00:16:59,360 --> 00:17:06,160 all then you should you know it's easy just to type it now we're back to the middle PC again 152 00:17:06,160 --> 00:17:14,000 and we're going to create a new file now no space tilde for such bin for such bash start dash synergy 153 00:17:14,000 --> 00:17:22,000 dash server dot bash and in there we're going to paste the following stuff hash exclamation 154 00:17:22,000 --> 00:17:30,000 mark for such bin for such bash you line server name equals synergy s now the reason I'm doing that 155 00:17:30,000 --> 00:17:36,720 is because synergy server can be different but let's let's let's forget about that so again 156 00:17:36,720 --> 00:17:45,040 I do a kill all synergy s for the server name and then I run synergy s space dash dash server 157 00:17:45,040 --> 00:17:54,240 space dash dash address space 127 dot zero dot zero dot one space dash dash config space force tilde 158 00:17:54,240 --> 00:18:08,000 for such edc for such synergy dash work dot config space dash dash name space pc underscore middle 159 00:18:08,000 --> 00:18:34,960 slash synergy dash work dot config dot log and I do some stuff to set the control keys and turn off the 160 00:18:34,960 --> 00:18:41,600 one I run the command start synergy server dash and it opens the shell to the PC on the right 161 00:18:41,600 --> 00:18:45,600 which is fine because sometimes I need to do s h stuff over there and it's easier locally 162 00:18:47,600 --> 00:18:55,040 but from there on I can also move my mouse over to the right and it'll control that keyboard 163 00:18:55,040 --> 00:19:02,160 over there which is sometimes handy and the reason I'm using this is if you're in the case where 164 00:19:02,160 --> 00:19:06,240 you need to have two separate connections one for the lab on one for production and you don't want 165 00:19:06,240 --> 00:19:12,080 to mess with anything then you have two separate systems there's no way days it can migrate from 166 00:19:12,080 --> 00:19:18,320 one to the other and that's kind of a useful way of doing it then the production stuff is over on 167 00:19:18,320 --> 00:19:23,200 the production machine and your lab stuff is on your local machine and you could also use it just 168 00:19:23,200 --> 00:19:28,960 for the laws for control and somebody else's keyboard and mouse what they think they're going 169 00:19:28,960 --> 00:19:35,040 nuts so I want to just have a side note here about that special address one two seven that's 170 00:19:35,040 --> 00:19:39,680 your that's your one and talk to you about how this actually works we kind of alluded to it 171 00:19:39,680 --> 00:19:46,720 but I want to go into more a little bit more detail that address is also referred to as a loop 172 00:19:46,720 --> 00:19:53,920 back address or home or local host and it's usually defined in slash ETC slash host so if you ever 173 00:19:53,920 --> 00:20:00,880 saw somebody with a t-shirt at a conference that says there's no place like one two seven dot zero dot 174 00:20:00,880 --> 00:20:07,760 zero dot one that's what they actually mean and the purpose of it is it's used by programs 175 00:20:07,760 --> 00:20:15,360 running on a given computer to talk to each other so you can isolate say you have your own 176 00:20:15,360 --> 00:20:21,520 web server running on your local computer and you can connect the browser on your local computer 177 00:20:21,520 --> 00:20:26,080 to that web server so if you set up your server only to be listening locally on port one two seven 178 00:20:26,080 --> 00:20:31,600 dot zero dot zero dot one and port eighty then you can open up a browser in your computer and type 179 00:20:31,600 --> 00:20:37,520 a one two seven dot zero dot zero dot one and by default they port eighty is at us it'll go to the 180 00:20:37,520 --> 00:20:42,080 web server on your local machine now if you're from bobs and next year on the same network 181 00:20:42,080 --> 00:20:47,200 tries to go to one two seven dot zero dot zero dot one port eighty it's not going to go to your 182 00:20:47,200 --> 00:20:54,560 web server it's going to try and go to the web server in its machine that's referred to on local 183 00:20:54,560 --> 00:21:03,040 host and it's an IP for network standard and it reserves the entire block 0.27 dot zero dot zero dot zero 184 00:21:03,040 --> 00:21:08,240 four dot eight that's more than 16 million addresses for your loopback purposes so anything 185 00:21:08,240 --> 00:21:15,440 beginning but one two seven is a local address so you can have one two seven dot one two three the four 186 00:21:15,440 --> 00:21:25,200 level one two out four five six one two seven does one dot one dot five is also a loopback address 187 00:21:25,200 --> 00:21:29,760 equally one two seven dot one two seven dot one two seven dot one two seven is also a loopback address 188 00:21:30,960 --> 00:21:36,560 but you want to be a big careful with that because some your server still needs to be listening 189 00:21:36,560 --> 00:21:40,800 to the address that you're going to it's not a wild card that any particular address is there 190 00:21:40,800 --> 00:21:45,840 you you can have one version of Apache listening on one two seven dot zero dot zero dot one and 191 00:21:45,840 --> 00:21:53,120 another one listening on one two zero zero dot zero dot two for instance now if you find that a 192 00:21:53,120 --> 00:21:59,040 little bit confusing just think of it like if you're talking to your bobs and the bobs says 193 00:21:59,040 --> 00:22:04,720 I'm going home now you should also go home so what does that mean you're never going to get 194 00:22:04,720 --> 00:22:10,160 confused by that because you know that what they're actually saying is I'm going to my home now 195 00:22:10,160 --> 00:22:18,000 and you should go to your home now so when you're talking about home it's context the one 196 00:22:18,000 --> 00:22:21,360 exception to that of course is if you're talking to Irish people and they say are you going home 197 00:22:21,360 --> 00:22:25,600 for Christmas they don't actually mean your home the mean are you going back to Ireland so there you 198 00:22:25,600 --> 00:22:31,520 go and that's that's just something Irish people have to to suffer and we we know about that 199 00:22:31,520 --> 00:22:38,960 so move on so what's happening here is that the address one two seven dot zero dot zero dot one 200 00:22:38,960 --> 00:22:44,640 when we configure anything on the PC middle is only available on the PC middle and equally 201 00:22:44,640 --> 00:22:49,040 when we configure something on the on the configuration files on the PC on the rise and we talk 202 00:22:49,040 --> 00:22:55,600 about one two seven dot zero to zero dot one we're only talking about the PC on the rise so 203 00:22:55,600 --> 00:23:01,040 there's a bit of something missing to connecting the two and that's because the server 204 00:23:01,840 --> 00:23:06,000 so the server is listening on the loop back address on one two seven dot zero to zero dot one 205 00:23:06,000 --> 00:23:11,760 on the PC middle while the client is sending to the loop back address on one two seven dot zero 206 00:23:11,760 --> 00:23:17,120 that's zero dot one and is which is PC on the rise so the trick is the remote forward 207 00:23:18,000 --> 00:23:24,720 configuration line in when we SSH from the PC on the middle to the PC on the rise and that 208 00:23:24,720 --> 00:23:30,000 plan is remote forward space one two seven dot zero to zero dot one colon and the port number 209 00:23:30,000 --> 00:23:38,160 four synergy which uses two four eight zero zero and one two seven dot zero to zero one two four 210 00:23:38,160 --> 00:23:44,560 eight zero zero so go through that in more detail that tells the remote in this case that's 211 00:23:44,560 --> 00:23:51,200 PC on the rise the listen on port one sorry two four eight zero zero so listen on port two four 212 00:23:51,200 --> 00:23:58,400 eight zero zero on its loop back address and that's going to be where the client is going to be 213 00:23:58,400 --> 00:24:07,920 talking to then the SSH connection will forward any packets to back to the remote from the remote 214 00:24:07,920 --> 00:24:16,160 to the PC in the middle and it'll pop those out on port two four eight zero zero on its loop back 215 00:24:16,160 --> 00:24:22,000 address and that's the address of the server so the client is sending down to its local address 216 00:24:22,560 --> 00:24:26,160 SSH is taking the packets and moving them over to the other side and popping them out 217 00:24:26,160 --> 00:24:33,360 on the local address of the server computer and into the port where it's listening very very 218 00:24:33,360 --> 00:24:38,560 cool actually when you think about it so that's all I have to say about that if you have questions 219 00:24:38,560 --> 00:24:43,200 or comments or you feel you can improve this in the episode free of free to do so and also 220 00:24:43,200 --> 00:24:48,880 considering recording and show yourself so that's it I'll round up by saying tune in tomorrow 221 00:24:48,880 --> 00:24:57,520 for another exciting episode of Hacker public the rate to you